Intersection, Union এবং Disjunction

Java Technologies - অ্যাপাচি কমন্স কালেকশনস (Apache Common Collection) CollectionUtils এর উন্নত ব্যবহার |
161
161

অ্যাপাচি কমন্স কালেকশনস (Apache Commons Collections) লাইব্রেরি এমন বিভিন্ন ইউটিলিটি ক্লাস সরবরাহ করে, যা বিভিন্ন কালেকশনের মধ্যে Intersection, Union, এবং Disjunction অপারেশন করতে সাহায্য করে। এগুলি বিশেষভাবে উপকারী যখন আপনাকে দুটি বা ততোধিক কালেকশনের মধ্যে সম্পর্কিত উপাদান খুঁজে বের করতে হয়, যেমন দুটি সেটের সম্মিলন বা পার্থক্য।

এই অপারেশনগুলির মাধ্যমে আপনি Set, List, Map বা অন্যান্য কালেকশনের মধ্যে কমন উপাদান (intersection), সম্মিলিত উপাদান (union), বা পার্থক্য (disjunction) বের করতে পারেন। অ্যাপাচি কমন্স কালেকশনসে এই ধরনের কাজের জন্য বিশেষ কিছু ইউটিলিটি ক্লাস এবং পদ্ধতি রয়েছে, যেমন CollectionUtils


1. Intersection (সাধারণ উপাদান)


Intersection অপারেশন দুটি কালেকশনের মধ্যে সেই উপাদানগুলো বের করে যা উভয়েই উপস্থিত থাকে। এটি সাধারণত Set বা List এর মধ্যে ব্যবহৃত হয়।

Intersection এর বৈশিষ্ট্য:

  • দুটি কালেকশনের মধ্যে যে উপাদানগুলো সাধারণ থাকে, সেগুলো নির্বাচন করা হয়।
  • এটি কমন উপাদান বের করতে ব্যবহৃত হয়।

Intersection উদাহরণ:

import org.apache.commons.collections4.CollectionUtils;
import java.util.Arrays;
import java.util.List;

public class IntersectionExample {
    public static void main(String[] args) {
        // Create two lists
        List<String> list1 = Arrays.asList("apple", "banana", "orange");
        List<String> list2 = Arrays.asList("banana", "orange", "grape");

        // Get intersection of the two lists
        List<String> intersection = (List<String>) CollectionUtils.intersection(list1, list2);

        // Print the intersection
        System.out.println(intersection);  // Output: [banana, orange]
    }
}

এখানে, CollectionUtils.intersection() পদ্ধতি ব্যবহার করা হয়েছে, যা দুটি তালিকার মধ্যে সাধারণ উপাদান "banana" এবং "orange" বের করেছে।


2. Union (সম্মিলন)


Union অপারেশন দুটি কালেকশনের মধ্যে সমস্ত ইউনিক উপাদান সংগ্রহ করে। এটি দুটি বা তার বেশি কালেকশনের সম্মিলন তৈরি করে এবং সমস্ত উপাদান একত্রে দেয়। এটি ডুপ্লিকেট উপাদানগুলো বাদ দেয় এবং শুধুমাত্র ইউনিক উপাদান থাকে।

Union এর বৈশিষ্ট্য:

  • দুটি বা তার বেশি কালেকশনের সকল উপাদান একত্রে যুক্ত করা হয়।
  • Set এর মধ্যে ডুপ্লিকেট এন্ট্রিগুলি বাদ দেওয়া হয়, তবে List এর মধ্যে ডুপ্লিকেট থাকতে পারে।

Union উদাহরণ:

import org.apache.commons.collections4.CollectionUtils;
import java.util.Arrays;
import java.util.List;

public class UnionExample {
    public static void main(String[] args) {
        // Create two lists
        List<String> list1 = Arrays.asList("apple", "banana", "orange");
        List<String> list2 = Arrays.asList("banana", "orange", "grape");

        // Get union of the two lists
        List<String> union = (List<String>) CollectionUtils.union(list1, list2);

        // Print the union
        System.out.println(union);  // Output: [apple, banana, orange, banana, orange, grape]
    }
}

এখানে, CollectionUtils.union() পদ্ধতি দুটি তালিকার সম্মিলন তৈরি করেছে। List ব্যবহার করার কারণে ডুপ্লিকেট উপাদান "banana" এবং "orange" বাদ দেওয়া হয়নি।


3. Disjunction (পার্থক্য)


Disjunction অপারেশন দুটি কালেকশনের মধ্যে যে উপাদানগুলো একটিতে রয়েছে কিন্তু অন্যটিতে নেই, সেগুলো বের করে। এটি মূলত দুটি কালেকশনের মধ্যে পার্থক্য খুঁজে বের করতে ব্যবহৃত হয়। Disjunction অপারেশনটি দুটি কালেকশনের মধ্যে একে অপরের সাথে অভিন্ন না হওয়া উপাদানগুলো সংগ্রহ করে।

Disjunction এর বৈশিষ্ট্য:

  • দুটি কালেকশনের মধ্যে যেগুলি একটিতে আছে কিন্তু অন্যটিতে নেই, সেগুলি নির্বাচন করা হয়।
  • এটি Symmetric Difference এর মতো কাজ করে, যেখানে দুটি সেটের পার্থক্য নির্ধারণ করা হয়।

Disjunction উদাহরণ:

import org.apache.commons.collections4.CollectionUtils;
import java.util.Arrays;
import java.util.List;

public class DisjunctionExample {
    public static void main(String[] args) {
        // Create two lists
        List<String> list1 = Arrays.asList("apple", "banana", "orange");
        List<String> list2 = Arrays.asList("banana", "orange", "grape");

        // Get disjunction of the two lists
        List<String> disjunction = (List<String>) CollectionUtils.disjunction(list1, list2);

        // Print the disjunction
        System.out.println(disjunction);  // Output: [apple, grape]
    }
}

এখানে, CollectionUtils.disjunction() পদ্ধতি দুটি তালিকার পার্থক্য বের করেছে। "apple" এবং "grape" তালিকায় একে অপরের মধ্যে উপস্থিত নেই, তাই এগুলি পার্থক্য হিসেবে নির্বাচন করা হয়েছে।


চারটি মৌলিক কালেকশন অপারেশন

অপারেশনবর্ণনাফলাফল
Intersectionদুটি কালেকশনের মধ্যে সাধারণ উপাদানগুলো বের করা।[banana, orange] (যেহেতু উভয় তালিকায় এই উপাদান দুটি রয়েছে)
Unionদুটি কালেকশনের সমস্ত ইউনিক উপাদান একত্রিত করা।[apple, banana, orange, grape]
Disjunctionদুটি কালেকশনের মধ্যে পার্থক্য বা ভিন্ন উপাদান বের করা।[apple, grape] (যেহেতু এক তালিকায় এটি রয়েছে কিন্তু অন্যটিতে নেই)
Subtractionএকটি কালেকশনের উপাদান থেকে আরেকটি কালেকশনের উপাদান মুছে ফেলা।[apple] (list1 থেকে list2 এর উপাদান বাদ দিলে)


Intersection, Union, এবং Disjunction অপারেশনগুলি Apache Commons Collections এর শক্তিশালী বৈশিষ্ট্য, যা বিভিন্ন কালেকশনের মধ্যে সম্পর্কিত উপাদান খুঁজে বের করার জন্য ব্যবহৃত হয়। এই অপারেশনগুলি খুবই উপকারী যখন আপনাকে বিভিন্ন ডেটা স্ট্রাকচার বা সেটের মধ্যে সাধারণ উপাদান (intersection), সম্মিলিত উপাদান (union), বা পার্থক্য (disjunction) বের করতে হয়। CollectionUtils ক্লাসের মাধ্যমে এই অপারেশনগুলো কার্যকরীভাবে এবং সহজে সম্পন্ন করা যায়।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion